Skip to main content
TrustRadius
Apache Camel

Apache Camel

Overview

What is Apache Camel?

Apache Camel is an open source integration platform.

Read more
Recent Reviews

TrustRadius Insights

Apache Camel is widely used as an enterprise integration solution by organizations transitioning from a monolithic to a service-oriented …
Continue reading

Routing made simple!

7 out of 10
June 23, 2022
Incentivized
We use Apache Camel as a bridge between various systems, where implementation and message format is changing fairly often. Integration and …
Continue reading

Camel is awesome!

10 out of 10
April 13, 2017
Incentivized
I've used Apache Camel as a great alternative integration framework compared to heavier middleware solutions from companies like IBM. It …
Continue reading

Apache Camel Review

9 out of 10
April 10, 2017
Incentivized
Apache Camel is being used for multiple projects in different organizations that I have worked at. It is being leveraged for EIP as well …
Continue reading

EIP using Camel

8 out of 10
April 03, 2017
Incentivized
We use it as the processing backbone/Enterprise Integration Pattern (EIP) framework for several products that we develop. It is used to …
Continue reading

Apache camel review

9 out of 10
July 12, 2016
Incentivized
I used it when I worked at Verizon Wireless. We used apache Camel on a couple projects as an integration layer between the UI and backend …
Continue reading
Read all reviews
Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is Apache Camel?

Apache Camel is an open source integration platform.

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

10 people also want pricing

Alternatives Pricing

What is Cin7?

Cin7, headqduartered in Auckland, aims to make complex retail and wholesale simple with all-in-one cloud inventory, POS, EDI and 3PL. Cin7 allows users to manage sales channels, inventory, point of sale and supply chain in one central, cloud-based software. Cin7 offers integrations using third…

Return to navigation

Product Details

What is Apache Camel?

Apache Camel Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(34)

Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

Apache Camel is widely used as an enterprise integration solution by organizations transitioning from a monolithic to a service-oriented architecture. Its lightweight nature, ease of use, and implementation of existing integration patterns make it a popular choice. Users praise Apache Camel for its groovy DSL, which simplifies the process of connecting microservices and enabling the publish-subscribe pattern by consuming from and producing to AWS SQS queues.

Quartz jobs heavily rely on Apache Camel for seamless integration, and Cox Communications utilizes this product in various departments to provide quick and scalable integration of diverse business systems. By reducing development effort and resources, Apache Camel fits well within Cox's existing infrastructure and is often used alongside customized versions of Camel components. In product development teams, Apache Camel is essential for core event processing, facilitating interactions over JMS between different modules while handling marshaling, unmarshaling, and sending/receiving POJOs.

With its plethora of plugins for various connectors and a user-friendly experience, Apache Camel serves as an alternative integration framework to heavier middleware solutions. It acts as a component of an Enterprise Service Bus, defining message routing and transformation rules for integrating on-premise applications and cloud services. Moreover, Apache Camel bridges systems with changing implementations and message formats, enabling seamless integration and workflow pipelines. Teams appreciate the time-saving and scalable nature of this product, making it a preferred choice in multiple organizations for EIP and event-based code projects. Lastly, Apache Camel proves to be vital as an integration layer between UI, backend services, and databases using its REST component and XML/Java DSL solutions.

The open-source nature of Apache Camel particularly shines when performing daily integration activities in non-production environments. It offers a reliable platform for deriving code from files based on defined logic and processes. Additionally, Apache Camel handles error handling with built-in features like error retry, waiting, and exponential backoff. This makes it the go-to choice for integrating multiple sources and sinks of data with different formats and protocols, allowing for the implementation of complex logic. Overall, Apache Camel is highly regarded for its ability to simplify integration activities and enable seamless connectivity across various systems and platforms.

Easy Learning Curve: Several users have found Apache Camel to have an easy learning curve, allowing them to quickly grasp the concepts and start using it efficiently.

Extensive Integration Support: Many reviewers have praised Apache Camel for its extensive support for integration with diverse software platforms. With over 150 components available, users can seamlessly integrate Camel with various frameworks and middleware products such as Spring, Apache Karaf, and Servicemix.

Robustness and Reliability: Numerous users have highlighted the robustness of Apache Camel in handling various information transfer protocols out-of-the-box. They appreciate that it is a reliable solution for their integration needs, making it suitable for creating microservices and handling complex business logic.

Lack of Detail in Documentation: Several users have found the documentation to be lacking in detail and feel that it could use improvement. They mention that sometimes it takes trial and error to figure out how to do something, indicating a need for more comprehensive instructions.

Steep Learning Curve: Users have mentioned that there is a relatively steep learning curve associated with using the software. Some users felt overwhelmed by the complexity and required a significant amount of time and effort to become proficient in its usage.

Dependence on Java Skills: A common concern expressed by users is the heavy dependence on Java skills for optimal use of the software. Many users feel that a great skill set in Java is required to effectively utilize all the features and capabilities offered by the software.

Users have praised Apache Camel as an excellent choice for beginners in integration software development. They have found it to be user-friendly and valuable when starting out in this field. Reviewers also recommend utilizing online videos for additional assistance with Apache Camel. Video tutorials offer helpful insights and explanations. Another common recommendation is to consider Apache Camel as a viable alternative to larger middleware options like IBM. Users appreciate its flexibility and simplicity compared to more complex and expensive alternatives. It is also advised to have a clear understanding of EIPS (Enterprise Integration Patterns) when using Apache Camel. Additionally, users suggest keeping routes small and limiting the number of threads on endpoints to prevent idle threads from consuming locks.

Reviews

(1-3 of 3)
Companies can't remove reviews or game the system. Here's why
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Apache Camel is used to provide a component of our Enterprise Service Bus, we use it for defining message routing and transformation rules, enabling the business to integration disparate on premise applications and cloud services in a robust and relatively low effort way. Our primary pattern for integration that we use is asynchronous messaging exchanged via an Enterprise Service Bus.
  • Rules for routing messages between senders and receivers
  • Applying transformations to messages
  • Low cost low effort solution
  • Open source solution relies on community for support
  • Lacks graphical user interface for message routing and transformation definitions
  • Relatively steep learning curve
Apache Camel is a very mature open source solution for implementing enterprise integration patterns, and is good for organizations that are comfortable using open source solutions with only community support that need the ability to route and transform messages between senders and receivers connected to an enterprise message bus solution with no licensing costs.
  • Message routing
  • Message transformation
  • Maturity
  • Enabled business to integrate disparate systems at relatively low cost
  • Required a relatively steep learning curve for resources to learn
  • Few expert resources are available on the market leading to senior resources being expensive
If you are looking for a Java-based open source low cost equivalent to webMethods or Azure Logic Apps, Apache Camel is an excellent choice as it is mature and widely deployed, and included in many vendored Java application servers too such as Redhat JBoss EAP. Apache Camel is lacking on the GUI tooling side compared to commercial products such as webMethods or Azure Logic Apps.
April 03, 2017

EIP using Camel

Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use it as the processing backbone/Enterprise Integration Pattern (EIP) framework for several products that we develop. It is used to provide components for message ingest, orchestration and export. By orchestration, I mean the determination and execution of the path of any single message through the application. It also is our primary error handling mechanism as it provides out-of-the-box error retry, waiting and exponential backoff.
  • The Java DSP is one of the primary reasons we chose Camel over Spring Integration's XML-based route definitions. It provides compile-time checking of syntax with auto-complete in an IDE (Eclipse, etc).
  • The component documentation on the website is phenomenal.
  • Error handling mechanisms are robust and easy to use and set up. Default settings are great and intuitive.
  • The ability to define distinct contexts within the same application and define context-wide, context-specific error handling is great as well.
  • I find the "seda" endpoint to be less obvious that it is doing multi-threading than Spring Integration's executor mechanism.
  • Integration with Spring Beans is pretty good, but I believe SI's is a bit better (for obvious reasons, both being Spring products).
  • SI's use support is probably a bit better/faster and I believe the user base is larger so that there are most questions/answers for SI on StackOverflow
Message processing, especially with high throughput, is an excellent use case. File system monitoring, JMS ingest, etc., is really great. I would most consider it for automated processing scenarios. Although it provides components to support REST endpoints, I would choose frameworks such as Jersey or Spring REST for that. Although it supports a response mechanism, I don't think I would choose to use it in systems where I need fine-tuned control of responses.
  • Very fast time to market in that so many components are available to use immediately.
  • Error handling mechanisms and patterns of practice are robust and easy to use which in turn has made our application more robust from the start, so fewer bugs.
  • However, testing and debugging routes is more challenging than working is standard Java so that takes more time (less time than writing the components from scratch).
  • Most people don't know Camel coming in and many junior developers find it overwhelming and are not enthusiastic to learn it. So finding people that want to develop/maintain it is a challenge.
  • Spring Integration
We did a comparison of the two products with an example application that tested about 10 distinct EIP pattern. We wrote Camel in XML and Java DSL and SI in XML. This was about 3 years ago. At the time, I found the threading model in SI to be more intuitive and Camel's seda. However, Camel's documentation at the time was far and away more complete (Wiki pages for Camel vs looking through XML schema for SI). Since the SI has improved their documentation. The main factor that I believe still sets Camel apart is the Java DSL. Writing routes is complicated enough, but doing so in XML would be just painful.
July 15, 2016

Better on a Camel

Score 9 out of 10
Vetted Review
Verified User
Incentivized
Apache Camel is used by many departments at Cox Communications, but not the entire organization. It enables quick and scaleable integration of diverse business systems at Cox and reduces development effort and resources. Various Camel components are used and there is even a customized version of Camel Http4 component. Also Camel fits well in the existing infrastructure at Cox.
  • Camel has an easy learning curve. It is fairly well documented and there are about 5-6 books on Camel.
  • There is a large user group and blogs devoted to all things Camel and the developers of Camel provide quick answers and have also been very quick to patch Camel, when bugs are reported.
  • Camel integrates well with well known frameworks like Spring, and other middleware products like Apache Karaf and Servicemix.
  • There are over 150 components for the Camel framework that help integrate with diverse software platforms.
  • Camel is also good for creating microservices.
  • Camel features and documentation can get confusing to new users. Documentation can and should be improved. Also it would help if there are more tutorials available. Certification in Camel and related technologies like Servicemix and Karaf would also help.
  • The Camel infrastructure probably needs to be rebuilt (hopefully this may happen with version 3.0). At this time the latest production release of Camel (2.17.x) is not built with the latest version of Java (JDK 1.8).
  • Camel should also move towards becoming a "heavyweight" ESB product, though this may detract from some of its desirable features.
Apache Camel is well suited for integration of existing software programs/components with newer and external systems. It supports SOAP and REST protocols pretty well. It was not designed to directly support front end systems. It has limited to non-existent support for Javascript. It is not suitable for creating simple standalone applications and meaningful deployment does require use of other frameworks like Spring/Karaf/JBoss.
  • This is hard to guage, but definitely the effort and resources required to develop and deploy new applications has gone down considerably. Approximately 50-70% lesser resources compared to the traditional way of developing applications.
  • Code complexity and maintenance costs have gone down, again over 50%.
  • Unit testing has cut down on bugs in production. There are far fewer bugs than would have been the case with plain Java. Approximately 70% less bugs discovered.
  • Camel is a free, open source product. It is free as opposed to similar proprietary products like Tibco Business Works.
Apache Camel has been the integration framework of choice, but I was not the person to make the decision to use it. Compared to other competing products like Tibco Business Works, etc., it is free and open source and its licensing policy is acceptable to the management of Cox.
Return to navigation